home *** CD-ROM | disk | FTP | other *** search
/ Almathera Ten Pack 2: CDPD 1 / Almathera Ten on Ten - Disc 2: CDPD 1.iso / pd / 126-150 / 138 / amigaline / amigaline2 < prev    next >
Text File  |  1995-03-13  |  2KB  |  59 lines

  1.             Technical Note #2
  2.     blitter software, minor change to low level blit routines
  3.  
  4. SUMMARY
  5.  
  6. $ 2/0 blitter software, minor change to low level blit routines
  7. $ release
  8. $ 4-Oct-87 Robert R. Burns / Commodore-Amiga, Inc.
  9. $ text, blitter, graphics, BltBitMap(), BltTemplate(), speed
  10.  
  11.     A change will be made to some of the low-level blit routines.  Rather
  12. that calulating the directions for each bitplane in turn, the calculation
  13. will be done once.
  14.  
  15. ----------------------------------------------------------------------------
  16.  
  17. Developer Folks:
  18.  
  19. I'm reviewing the grunt graphics.library blitting routines (i.e. BltBitMap
  20. and BltTemplate) with an eye towards enhancing their speed as part of the
  21. work I'm doing for Commodore to enhance the text code.
  22.  
  23. I'm considering making an assumption about how bit planes in BltBitMap are
  24. organized that will allow me to reduce both calculation and hardware
  25. register usage.  Dale [Luck] and I agree that it's a reasonable assumption,
  26. but I offer it to y'all for review so noone gets burned.
  27.  
  28. For background, remember that the source and destination of a blit are
  29. related to one another in one of six ways.  These six cases require
  30. different blit directions and modulos (and in two of the cases, non-zero A
  31. sources) to accomplish moving the source to the destination without
  32. tromping on the source during the move.
  33.  
  34. Under 1.2 (<=V34), these cases were calculated for each bit plane
  35.                source/destination pair in the copy.
  36.    +----+           Thus, a BltBitMap that took a source
  37.    |s0    |     +----+       that described two planes that were
  38.    |    |     |d0+----+    to be moved in different directions
  39.    |  +----+  |  |d1  |    to the destination would be handled
  40.    +--|s1  |  |  |    |    correctly.  (see visual aid)
  41.       |    |  +--|    |
  42.       |    |     +----+    I conjecture that noone uses this
  43.       +----+           capability: that no uses of
  44.                BltBitMap distort a BitMap to do
  45. an in-place copy in two different directions at once.
  46.  
  47. For 1.? (>V34), I propose to calculate the relationship between the source
  48. and the destination once, and then cycle thru the bit planes.  If you know
  49. of a reason why I should not, please mail me a reply.
  50.  
  51.         Bob Burns for Commodore-Amiga, Inc.
  52.         Kodiak Software
  53.         USENET: well!amiga!kodiak
  54.         BIX:    kodiak
  55.  
  56. SEE ALSO
  57.  
  58.  
  59.